System and method providing location based wireless resource identification

ABSTRACT

A system and method providing location based wireless resource identification in a communication system. Various aspects of the present invention may comprise determining a location of a communication system (e.g., a multimode communication device). One or more wireless resources may then, for example, be identified based, at least in part, on the determined location. Additionally for example, respective manners of communicating with identified wireless resources may be determined and utilized for communication between the communication system and the identified wireless resources. A communication system may, for example, comprise a location determination module adapted to determine a location of the communication device. A wireless resource identification module may, for example, be adapted to identify one or more wireless resources based, at least in part, on the determined location. Also for example, a communication manager module may be adapted to determine respective manners of communicating with the identified wireless resources.

CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

The present application is related to and claims priority from U.S.Provisional Patent Application Ser. No. 60/739,802, with attorney docketnumber 16865US01, filed Nov. 22, 2005, and titled “SYSTEM AND METHODPROVIDING LOCATION BASED WIRELESS RESOURCE IDENTIFICATION,” the contentsof which are hereby incorporated herein by reference in their entirety.

The present application is also related to U.S. patent application Ser.No. 11/217,645, entitled “MULTIMEDIA COMMUNICATION DEVICE WITHCONFIGURATION UPDATE CAPABILITY,” filed Sep. 1, 2005, and U.S. patentapplication Ser. No. ___/___,___, entitled “PROGRAMMABLE WIRELESS ACCESSPOINT SUPPORTING CONFIGURATION PROFILE UPDATING,” filed concurrentlyherewith, with attorney docket number 16864US02, each of which arehereby incorporated herein in their entirety by reference.

FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

[Not Applicable]

SEQUENCE LISTING

[Not Applicable]

MICROFICHE/COPYRIGHT REFERENCE

[Not Applicable]

BACKGROUND OF THE INVENTION

Communication devices (e.g., mobile communication devices) arecontinually increasing in popularity. Such communication devicesinclude, for example and without limitation, cellular phones, pagingdevices, portable email devices, and personal digital assistants. Mobilecommunication devices, for example, provide the user with the capabilityto conduct communications while moving through a variety ofenvironments.

Mobile communication devices may operate in accordance with multiplecommunication modes. For example a mobile communication device may beadapted to operate in a cellular communication mode and a wirelesscomputer network communication mode. Such multimode mobile communicationdevices may utilize respective radio configurations for eachcommunication mode. For example, various communication modes maycorrespond to different respective radios and/or different communicationprotocols.

As mobile communication devices increase in popularity, communicationnetworks providing communication links to such mobile communicationdevices and various electronic devices providing services to such mobilecommunication devices are also increasing in popularity. The increase incommunication network and device availability provides an increasingnumber of communication options to mobile communication devices. Inaddition, as mobile communication devices move between environments, thearray of communication networks available to the mobile communicationdevices also changes.

As the number of mobile communication devices and/or communicationnetworks or other devices increases, the complexity of establishing andmaintaining communication links between mobile communication devices andcommunication networks or other devices also increases. Such increasedcomplexity, in turn, may result in increased power consumption,increased cost, etc. Further limitations and disadvantages ofconventional and traditional approaches will become apparent to one ofskill in the art, through comparison of such systems with the presentinvention as set forth in the remainder of the present application withreference to the drawings.

BRIEF SUMMARY OF THE INVENTION

Various aspects of the present invention comprise a system and methodproviding location based wireless resource identification in acommunication system, substantially as shown in and/or described inconnection with at least one of the figures, as set forth morecompletely in the claims. These and other advantages, aspects and novelfeatures of the present invention, as well as details of illustrativeaspects thereof, will be more fully understood from the followingdescription and drawings.

BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a diagram illustrating a first exemplary method for operatinga communication system, in accordance with various aspects of thepresent invention.

FIG. 2 is a diagram illustrating a second exemplary method for operatinga communication system, in accordance with various aspects of thepresent invention.

FIG. 3 is a diagram illustrating a third exemplary method for operatinga communication system, in accordance with various aspects of thepresent invention.

FIG. 4 is a diagram illustrating a portion of a first exemplarycommunication system, in accordance with various aspects of the presentinvention.

FIG. 5 is a diagram illustrating a portion of a second exemplarycommunication system, in accordance with various aspects of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a diagram illustrating a first exemplary method for operatinga communication system, in accordance with various aspects of thepresent invention. The communication system may comprise characteristicsof any of a variety of communication systems (e.g., multimodecommunication systems). For example and without limitation, thecommunication system may comprise characteristics of any of a variety ofmobile communication devices (e.g., cellular phones, paging devices,portable email devices, etc.). Also for example, the communicationsystem may comprise characteristics of fixed communication systems ordevices (e.g., network access points, base stations, satellites,wireless routers, set top boxes, etc.). Further for example, thecommunication system may comprise characteristics of a variety ofelectronic devices with wireless communication capability (e.g.,televisions, music players, cameras, remote controls, personal digitalassistants, handheld computers, mobile gaming devices, etc.)Accordingly, the scope of various aspects of the present inventionshould not be limited by characteristics of particular communicationsystems or devices.

The following discussion will, at times, refer to various communicationmodes. For the following discussion, a communication mode may generallybe considered to coincide with communication utilizing a particularcommunication protocol or standard. A non-limiting list of exemplarycommunication protocols includes various cellular communicationprotocols (e.g., GSM, GPRS, EDGE, CDMA, WCDMA, TDMA, PDC, etc.), variouswireless networking protocols or standards, including WLAN, WMAN, WPANand WWAN (e.g., IEEE 802.11, Bluetooth, IEEE 802.15, UWB, IEEE 802.16,IEEE 802.20, Zigbee, any WiFi protocol, etc.), various televisioncommunication standards, etc. Accordingly, the scope of various aspectsof the present invention should not be limited by characteristics ofparticular communication modes or protocols, whether standard orproprietary.

The exemplary method 100 begins executing at step 105. The exemplarymethod 100 (and all methods discussed herein) may begin executing forany of a large variety of reasons. For example and without limitation,the exemplary method 100 may begin executing in response to powering-upor resetting the communication system implementing the method 100. Alsofor example, the exemplary method 100 may begin executing in response toa schedule (e.g., periodically, aperiodically, etc.). Further forexample, the exemplary method 100 may begin executing in response to auser input directing the method 100 to begin executing. Additionally forexample, the exemplary method 100 may begin executing in response tocommunication link conditions (e.g., a change in communication linkquality, whether better or worse). Accordingly, the scope of variousaspects of the present invention should not be limited bycharacteristics of any particular initiating cause or condition.

The exemplary method 100 may, at step 110, comprise determining thelocation of the communication system (e.g., a mobile multimodecommunication device) implementing the method 100. Step 110 may comprisedetermining the location of the communication system in any of a varietyof manners, non-limiting examples of which will be presented below.

For example, step 110 may comprise utilizing location orlocation-related information received from various types of systemsgenerally associated with positioning information (e.g., terrestrialand/or satellite based positioning systems). As an example, step 110 maycomprise receiving and processing global positioning system (“GPS”)information to determine the location of the communication system. Step110 may, for example, utilize a GPS receiver on-board the communicationsystem to receive GPS information.

Also for example, step 110 may comprise utilizing ultrawideband (“UWB”)positioning information to determine the location of the communicationsystem. As an example, step 110 may comprise receiving UWB positioninginformation from a position-tracking system. Various portions of such aposition-tracking system might be internal or external to thecommunication system.

Further for example, step 110 may comprise receiving locationinformation from a communication network (or network device) with whichthe communication system implementing the method 100 has establishedcommunication. As a non-limiting example, step 110 may compriseestablishing a communication link with an access point of a particularpersonal area network (“PAN”) or local area network (“LAN”) thatnotifies the communication system of the network or access pointlocation.

Additionally for example, step 110 may comprise ascertaining location ofthe communication system implementing the method 100 from one or moredetected communication networks. For example, step 110 may compriseutilizing knowledge of communication network location. As a non-limitingexample, step 110 may comprise ascertaining that the communicationsystem is in the home when a PAN associated with a home office isdetected. As another non-limiting example, step 110 may compriseascertaining that the communication system is at the office when theoffice LAN is detected. As a further non-limiting example, step 110 maycomprise ascertaining that the communication system is at a particularairport when the airport's LAN is detected, or that the communicationsystem is in a particular city when the city's metropolitan area network(“MAN”) is detected. Step 110 may comprise ascertaining location of thecommunication system based on any of a variety of detected networks(e.g., two-way communication networks, one-way communication networks,television networks, radio networks, etc.).

Further for example, step 110 may comprise ascertaining location of thecommunication system implementing the method 100 from one or moredetected devices. For example, step 110 may comprise utilizing knowledgeof device location. As a non-limiting example, step 110 may compriseascertaining that the communication system is in the home when a homedevice is detected. Such devices may, for example, include a computer,modem, printer, mouse, keyboard, television, stereo, set top box,environmental control system, alarm system, memory device, telephone,wireless relay, video game box, or any home device with communicationcapability or other detectable feature. As a further non-limitingexample, step 110 may comprise ascertaining that the communicationsystem is in the office when an office device is detected. Such devicesmay, for example, include an office computer, printer, telephone, modem,router, fax machine, copier, keyboard, mouse, network access point,wireless router/modem, database or any office device with communicationcapability or other detectable feature.

Step 110 may, for example, comprise determining location of acommunication system implementing the method 100 by analyzingcommunication link conditions. As a non-limiting example, step 110 maycomprise determining that the communication system is in the immediatevicinity of the office based on a relatively high-quality communicationlink between the communication system and the office LAN. Continuing theexample, step 110 may alternatively comprise determining that thecommunication system is at least one block away from the office based ona relatively low-quality communication link between the communicationsystem and the office LAN. As another example, step 110 may comprisedetermining that the communication system is home but not within thehome office based on a relatively high-quality communication link with ahome LAN and a relatively low-quality communication link with a homeoffice PAN.

Step 110 may further, for example, comprise determining location of acommunication system implementing the method 100 based on user input. Asa non-limiting example, a user may explicitly indicate to thecommunication system that the communication system is located in aparticular city, building, room, campus, etc.

In general, step 110 may comprise determining location of thecommunication system. Accordingly, the scope of various aspects of thepresent invention should not be limited by characteristics of anyparticular manner of determining a communication system location.

The exemplary method 100 may, at step 120, comprise identifying one ormore wireless resources based, at least in part, on the determinedlocation (e.g., as determined at step 110). Step 120 may compriseidentifying one or more wireless resources in any of a variety ofmanners, non-limiting examples of which will be presented below.

A wireless resource may generally be considered a resource (e.g., awireless communication network, network access point or other electronicdevice with wireless communication capability) with which acommunication system may communicate. For example, a wireless resourcemay comprise a particular wireless communication network or wirelessnetwork access point. Also for example, a wireless resource may comprisea printer or memory device with wireless communication capability.Further for example, a wireless resource may comprise a wireless link toa wired or optical communication network. Still further for example, awireless resource may comprise a wireless LAN, WAN or PAN access point.Yet further for example, a wireless resource may comprise awireless-capable monitor, print, audio input or output device, camera,keyboard, telephone, mouse, intercom system, environmental controlsystem, satellite transceiver, television, etc.

Identifying one or more wireless resources may generally comprisedetermining any of a large variety of types of information utilized toidentify a wireless resource. For example, wireless resourceidentification may comprise a single piece of information related to aparticular wireless resource or may comprise a relatively large amountof information related to a relatively complex array of wirelessresources. For example and without limitation, wireless resourceidentification information may comprise resource name, type, address(universal and/or local), characteristics, capabilities, communicationprotocols, availability, status, location, access privileges, etc. Thefollowing examples will provide non-limiting examples of informationthat might be included in a wireless resource identification.

Step 120 may, for example, comprise identifying a list of wirelessresources associated with the determined location. Such a list ofwireless resources may, for example, comprise a list of wirelesscommunication networks associated with the determined location. Such alist of wireless resources may, for example, comprise a list ofelectronic devices with wireless communication capability that areassociated with the determined location. Such a list may also, forexample, comprise any of a variety of types of information associatedwith a wireless resource (e.g., resource name, type, address (universaland/or local), characteristics, capabilities, communication protocols,availability, status, location, access privileges, etc.).

A list or other grouping of wireless resources associated with adetermined location may, for example, be formed from information storedin a database. Such a database may, for example, reside on-board thecommunication system (e.g., in a non-volatile memory device) or mayreside in another device communicatively coupled to the communicationsystem (e.g., through a communication network, like a LAN or theInternet). Such a database may, for example, comprise stored informationcorrelating one or more locations with one or more respective wirelessresources. As will be discussed in more detail later, such a databasemay be maintained manually or automatically and/or managed off-line orin real-time. A list of wireless resources may, for example, beexclusive or non-exclusive. That is, such a list may, for example,comprise a list of the only wireless resources that the communicationsystem is to utilize or may, for example, comprise a list of primaryresources that the communication system is to utilize while allowing forthe utilization of other wireless resources that the communicationsystem determines are available.

Step 120 may, for example, comprise identifying a set of wirelessresources of a plurality of predetermined sets of wireless resources,each of which might be associated with one or more particular locations.In a non-limiting exemplary scenario, a first set of wireless resourcesmay be associated with a home location, a second set of wirelessresources may be associated with an office location, a third set ofwireless resources may be associated with a commute (or portionthereof), and a fourth set of wireless resources may be associated witha particular city. Note that in various exemplary scenarios (e.g.,located in an office), a plurality of locations may be determinedsimultaneously (e.g., office, campus and city). Thus, in such exemplaryscenarios, a plurality of sets of wireless resources may besimultaneously applicable.

Also for example, step 120 may comprise identifying unknown wirelessresources. For example, step 120 may comprise searching for any wirelessresources that are recognized and available. Such identification may,for example, be performed in addition to, or in lieu of, identifyingknown wireless resources. As an example, step 120 may comprisedetermining that no wireless resources are known to be associated withthe present location, and determining to search for all recognized andavailable resources within range of the location. Such searching may,for example, comprise performing active searching (e.g., sending beaconsand waiting for responses) and/or passive searching (e.g., listening forbeacons or other signals sent by other devices). As will be mentionedlater, information of identified previously unknown resources may bestored in a database for future reference.

Additionally for example, step 120 may comprise verifying the existenceand/or availability of known resources. For example, step 120 maycomprise first determining a list of wireless resources that are knownto be generally available at a particular location, and then attemptingto establish communication links with the known devices to verify thatthe known devices are currently available. As will be discussed later,information related to resource verification may be utilized to updatedatabase information for future reference.

In various exemplary scenarios, step 120 may also comprise failing toidentify any wireless resources associated with the location. In such ascenario, as discussed above, step 120 may comprise searching forunknown resources. Alternatively, in such a scenario, step 120 maycomprise not searching for other resources (e.g., in an energy-savingmode or in accordance with a user-defined behavioral profile).

Still further for example, step 120 may comprise interacting with a userregarding wireless resources. For example, step 120 may comprisereceiving a user input identifying a set of wireless resources toutilize until directed otherwise by the user. Also for example, step 120may comprise presenting a plurality of sets of wireless resources to theuser (e.g., on a display) for the user to select from. Further forexample, step 120 may comprise presenting any of a variety of types ofinformation regarding wireless resources to a user and acquiring userinput regarding the presented information.

In general, step 120 may comprise identifying one or more wirelessresources based, at least in part, on the determined location.Accordingly, the scope of various aspects of the present inventionshould not be limited by characteristics of one or more particularmanners of identifying wireless resources.

The exemplary method 100 may, at step 130, comprise identifyingrespective manner(s) of communicating with the identified wirelessresources(s) (e.g., as identified at step 120). Step 130 may compriseidentifying the respective manner(s) of communicating with theidentified wireless resource(s) in any of a variety of manners,non-limiting examples of which will be provided below.

For example, step 130 may comprise identifying at least one radio of aplurality of radios of the communication system (e.g., a mobilemultimode communication device) to utilize to communicate withidentified wireless resources (e.g., as identified at step 120). As anon-limiting example, a multimode communication device may comprise afirst radio adapted to communicate utilizing a first communicationprotocol or standard (e.g., IEEE 802.11), a second radio adapted tocommunicate utilizing a second communication protocol or standard (e.g.,Bluetooth) and a third radio adapted to communicate utilizing a thirdcommunication protocol or standard (e.g., IEEE 802.15). Continuing thenon-limiting example, step 110 may comprise determining that thecommunication system implementing the method 100 is located in anoffice. Step 120 may then comprise identifying a first wireless resource(e.g., a video monitor) that communicates utilizing the secondcommunication protocol and a second wireless resource (e.g., a LANaccess point) that communicates utilizing the first communicationprotocol. Step 130 may then, for example, comprise identifying thesecond radio for communicating with the first wireless resource andidentifying the first radio for communicating with the second wirelessresource.

Also for example, step 130 may comprise identifying at least one radioconfiguration profile with which to configure a programmable radio ofthe communication system (e.g., a multimode communication device). As anon-limiting example, a multimode communication device may comprise aprogrammable radio that is configurable to communicate in accordancewith a plurality of communication protocols (or standards). In anon-limiting exemplary scenario, a first configuration profile maycorrespond to communicating utilizing GSM, a second configurationprofile may correspond to communicating utilizing EDGE, a thirdconfiguration profile may correspond to communicating utilizing IEEE802.20, and a fourth configuration profile may correspond tocommunicating utilizing WCDMA. Continuing the non-limiting exemplaryscenario, step 110 may comprise determining that the communicationsystem implementing the method 100 is located in the home living room.Step 120 may then comprise identifying a first wireless resource (e.g.,a set top box) and a second wireless resource (e.g., a GSM cellularnetwork) associated with the home living room location. Step 130 maythen comprise identifying the third configuration profile forcommunicating with the set top box utilizing IEEE 802.20 and identifyingthe first configuration profile for placing a telephone call utilizingthe GSM cellular network.

For a non-limiting exemplary discussion of programmable radioconfigurations generally, refer to U.S. patent application Ser. No.11/217,645, entitled “MULTIMEDIA COMMUNICATION DEVICE WITH CONFIGURATIONUPDATE CAPABILITY,” filed Sep. 1, 2005, and U.S. patent application Ser.No. ___/___,___, entitled “PROGRAMMABLE WIRELESS ACCESS POINT SUPPORTINGCONFIGURATION PROFILE UPDATING,” filed ______, with attorney docketnumber 16864US01, which are hereby incorporated herein by reference intheir entirety.

Further for example, step 130 may comprise identifying at least onecommunication protocol (or standard) of a plurality of communicationprotocols (or standards) to utilize for communications. In anon-limiting exemplary scenario, the communication system implementingthe exemplary method 100 may be adapted to communicate utilizing a firstcommunication protocol (e.g., IEEE 802.11), a second communicationprotocol (e.g., Bluetooth), a third communication protocol (e.g., IEEE802.16) and a fourth communication protocol (e.g., WCDMA). Continuingthe exemplary scenario, step 110 may comprise determining that thecommunication system implementing the system is located in a particularconference room in a particular building. Step 120 may then, forexample, comprise identifying a first wireless resource (e.g., aBluetooth-based wireless LAN access point), a second wireless resource(e.g., an IEEE 802.16-based video projector) and a third wirelessresource (e.g., a Bluetooth-based audio output device). Continuing theexemplary scenario, step 130 may then comprise identifying the secondcommunication protocol for communicating with the wireless LAN, thethird communication protocol for communicating with the video projectorand the second communication protocol for communicating with the audiooutput device.

Note that communication protocol (or standard) identification may alsocomprise various implementation details associated with a communicationprotocol. Such protocol implementation details may, for example andwithout limitation, comprise power information, frequency information,secure communication information, etc. Note also that such informationmay vary based on location. For example, different geographical regionsmay have different respective maximum power limits associated with theIEEE 802.11 standard and/or may require operation in differentrespective frequency bands. Accordingly, implementing a first protocolat a first location may be different from implementing the firstprotocol at a second location.

In general, step 130 may comprise identifying respective manner(s) ofcommunicating with the identified wireless resources(s). Accordingly,the scope of various aspects of the present invention should not belimited by characteristics of any particular manner of identifying amanner of communicating.

The exemplary method 100 may, at step 140, comprise communicating withthe identified wireless resources (e.g., as identified at step 120) inparticular respective manners (e.g., as identified at step 130). Step140 may comprise communicating with the identified wireless resources inany of a variety of manners.

The exemplary method 100 may, at step 195, comprise performing continuedprocessing. Such continued processing may comprise performing any of avariety of continued processing activities. For example and withoutlimitation, as will be discussed later, step 195 may comprisemaintaining wireless resource database information. Also for example,step 195 may comprise returning execution flow of the exemplary method100 back to redetermine location at step 110 and continue operation.Further for example, step 195 may comprise receiving operationalinformation from a user. Still further for example, step 195 maycomprise periodically performing searches for unknown wireless resourcesand/or verification of the existence and/or availability of knownwireless resources.

The exemplary method 100 was presented to provide non-limiting exemplaryillustrations of various aspects of the present invention. Accordingly,the scope of various aspects of the present invention should not belimited by characteristics of the exemplary method 100.

FIG. 2 is a diagram illustrating a method 200 for operating acommunication system (e.g., a multimode communication device), inaccordance with various aspects of the present invention. The exemplarymethod 200 may, for example and without limitation, share any or allcharacteristics with the exemplary method 100 illustrated in FIG. 1 anddiscussed previously.

The exemplary method 200 may, at step 210, comprise receivinginformation regarding the location of the communication system (e.g.,from a source external to the communication system/device implementingthe method 200). Step 210 may, for example and without limitation, shareany or all characteristics with step 110 of the exemplary method 100discussed previously. For example, step 210 may comprise receiving suchinformation from a dedicated navigational or positional system (e.g.,GPS), from a communication network or device to which the communicationsystem is communicatively coupled, from a user, etc.

The exemplary method 200 may, at step 212, comprise determining whetherthe communication system implementing the method 200 is located at (ornear) a known location (e.g., a location at which the communicationsystem has a communication history with known wireless resources). Step212 may, for example and without limitation, comprise searching adatabase or other memory storage for information regarding the location.In a non-limiting exemplary scenario, step 212 may comprise determiningthat there is no database information corresponding to the location, andthus, determining that the location is unknown. In another non-limitingexemplary scenario, step 212 may comprise determining that there isdatabase information corresponding to the location and that theinformation indicates that there are no known wireless resourcesassociated with the location, and thus, determining that the location isto be treated as an unknown location. In a further non-limitingexemplary scenario, step 212 may comprise soliciting and receiving userinput regarding a present location to determine whether the location isunknown or to be treated as unknown. In general, step 212 may comprisedetermining whether the location is unknown (or to be treated as such)in any of a variety of manners.

If step 212 comprises determining that the location is a known location,then step 212 may comprise directing execution flow of the exemplarymethod 200 to steps 220 and 230. Steps 220 and 230 may, for example,comprise identifying one or more wireless resources based, at least inpart, on the determined location and identifying respective manner(s)for communicating with the identified wireless resources(s). Steps 220and 230 may, for example and without limitation, share any or allcharacteristics with steps 120 and 130 of the exemplary method 100illustrated in FIG. 1 and discussed previously.

If step 212 comprises determining that the location is not a knownlocation, then step 212 may comprise directing execution flow of theexemplary method 200 to step 214. Step 214 may then, in turn, comprisedetermining whether to search for unknown wireless resources. Step 214may comprise making such determination in any of a variety of manners.For example and without limitation, step 214 may comprise solicitinginput from a user (e.g., in real time) regarding whether to search forunknown wireless resources. Also for example, step 214 may comprisemaking such determination by analyzing a pre-defined profile (e.g.,defined in non-real time prior to the real-time need for suchinformation) indicating whether to search for unknown wirelessresources. Such a profile may, for example, indicate to thecommunication system implementing the method 200 the circumstances underwhich the communication system is to search for unknown wirelessresources. As a further example, step 214 may comprise determiningwhether to search for unknown wireless resources based on present powersupply levels of the communication system. As yet another example, step214 may comprise always or never searching for unknown wirelessresources.

If step 214 determines that no search for unknown wireless resources isto be conducted, then step 214 may comprise directing execution flow ofthe exemplary method 200 to step 216, which delays further execution ofthe method 200. Step 216 may, for example and without limitation,comprise implementing a predefined time delay (e.g., periodic, random oraccording to a predefined profile). Step 216 may also, for example,comprise waiting for any of a variety of events to occur beforecontinuing execution of the method 200. After implementing the delay,step 216 may direct execution flow of the exemplary method 200 to step210 for receiving updated information regarding the location of thecommunication system.

If step 214 determines that a search for unknown wireless resources isto be conducted, then step 214 may comprise directing execution flow ofthe exemplary method 200 to step 218, which comprises searching forunknown wireless resources. Various non-limiting exemplary manners ofsearching for unknown wireless resources were discussed previously. Forexample and without limitation, step 218 may comprise actively searchingfor unknown wireless resources. Such active searching may, for example,comprise transmitting beacon signals and analyzing return signals. Suchactive searching may also, for example, comprise communicating with adatabase (e.g, through the Internet and/or cellular telephonyinfrastructure) to determine whether there are any records of particularwireless resources associated with the location. Step 218 mayalternatively, for example, comprise performing passive searching forwireless resources. Such passive searching may, for example, comprisepassively listening for beacon signals or other signals transmitted bywireless resources. Such passive searching may also, for example,comprise passively listening for wireless resource identificationinformation transmitted by other devices.

In various non-limiting exemplary scenarios, as part of searching forunknown wireless resources, step 218 may also comprise identifyingrespective manner(s) for communicating with the identified wirelessresources(s). Examples of such manners of communication were presentedpreviously with regard to step 130 of the exemplary method 100 discussedpreviously. For example and without limitation, step 218 may compriseanalyzing received signals (e.g., beacon signals or responses to beaconsignals) to determine a manner of communicating with identified wirelessresources. Also for example, step 218 may comprise analyzing databaseinformation associated with identified wireless resources to determinesuch manners of communication. Further for example, step 218 maycomprise communicating with a wireless resource using a first manner ofcommunication to determine other manners of communication with which thewireless resource may communicate.

The exemplary method 200 may, at step 240, comprise communicating withthe identified wireless resources (e.g., as identified at step 220and/or step 218) in particular respective manners (e.g., as identifiedat step 230 and/or step 218). Step 240 may comprise communicating withthe identified wireless resources in any of a variety of manners.

The exemplary method 200 may, at step 295, comprise performing continuedprocessing. Such continued processing may comprise performing any of avariety of continued processing activities. For example and withoutlimitation, as will be discussed later, step 295 may comprisemaintaining wireless resource database information. Also for example,step 295 may comprise returning execution flow of the exemplary method200 back to re-determine location at step 210 and continue operation.Further for example, step 295 may comprise receiving operationalinformation from a user. Still further for example, step 295 maycomprise periodically performing searches for unknown wireless resourcesand/or verification of the existence and/or availability of knownwireless resources. Yet further for example, step 295 may comprisereturning execution flow of the exemplary method 200 to step 214 tosearch for unknown wireless resources (e.g., even in a scenarioinvolving a known location).

The exemplary method 200 was presented to provide non-limiting exemplaryillustrations of various aspects of the present invention. Accordingly,the scope of various aspects of the present invention should not belimited by characteristics of the exemplary method 200.

FIG. 3 is a diagram illustrating a third exemplary method 300 foroperating a communication system (e.g., a multimode communicationdevice), in accordance with various aspects of the present invention.The exemplary method 300 may, for example and without limitation, shareany or all characteristics with the exemplary methods 100, 200illustrated in FIGS. 1-2 and discussed previously.

The exemplary method 300 may, at step 310, comprise determining locationof a communication system implementing the method 300. Step 310 may, forexample and without limitation, share any or all characteristics withsteps 110 and 210 of the exemplary methods 100, 200 illustrated in FIGS.1-2 and discussed previously.

As a non-limiting exemplary sub-step of step 310, the exemplary method300 may, at step 311, comprise detecting a known communication networkand/or electronic device. Such a communication network may, for example,be a wireless communication network, and such a device may, for example,comprise wireless communication capability. Such detection may, forexample, comprise processing a received signal (e.g., a beacon or othersignal) transmitted from a network or electronic device. Such detectionmay also, for example, comprise processing a message received from anetwork or electronic device in response to a transmitted signal (e.g.,a beacon or other signal). Such detection may further, for example,comprise establishing two-way way communication with a network orelectronic device.

As another non-limiting exemplary sub-step of step 310, the exemplarymethod 300 may, at step 312, comprise ascertaining location of thecommunication system from one or more detected networks and/or devices.For example, step 312 may comprise utilizing knowledge of network and/ordevice location. As a non-limiting example, step 312 may compriseascertaining that a communication system is in the home when a PANassociated with a home office and/or a printer associated with a homeoffice is detected (e.g., detected at step 311). As another non-limitinglimiting example, step 312 may comprise ascertaining that thecommunication system is at the office when the office LAN is detectedand/or a PC associated with the office is detected. As a furthernon-limiting example, step 312 may comprise ascertaining that thecommunication system is at a particular airport when the airport's LANis detected, or that the communication system is in a particular citywhen the city's MAN or television station is detected. Step 312 maycomprise ascertaining location of the communication system based on anyof a variety of detected networks and/or devices (e.g., two-waycommunication network, one-way communication network, televisionnetwork, radio network, office computer, printer, telephone, modem,router, fax machine, copier, keyboard, mouse, network access point,wireless router/modem, database or any device with communicationcapability or other detectable feature etc.).

The exemplary method 300 may, at step 320, comprise searching (e.g.,querying) a wireless resource database to identify one or more wirelessresources associated with the location (e.g., determined at step 310).Such a database may, for example, comprise stored informationcorresponding to wireless resources associated with particularlocations. Such a database may, for example, reside on-board thecommunication system (e.g., in a non-volatile memory device) or mayreside in another device communicatively coupled to the communicationsystem (e.g., through a communication network, like a LAN or theInternet). Such a database may, for example, comprise stored informationcorrelating one or more locations with one or more respective wirelessresources.

Such a database may, for example, be maintained manually orautomatically. For example, a user of the communication system maymaintain information in the database and/or the communication system mayitself maintain information in the database without interaction with auser. Such a database may, for example, be maintained specifically forthe communication system or may be maintained for a plurality ofcommunication systems that may access the database.

In a non-limiting exemplary scenario, the database may compriseinformation of wireless resources associated with a home, home office,family room, etc. Also for example, the database may compriseinformation of wireless resources associated with an office, officesuite or group of offices. Further for example, the database maycomprise information of wireless resources associated with a campus ormetropolitan area.

The exemplary method 300 may, at step 330, comprise identifyingrespective manner(s) of communicating with the identified wirelessresources(s) (e.g., as identified at step 320). Step 330 may, forexample and without limitation, share any or all characteristics withsteps 130 and 230 of the exemplary methods 100, 200 illustrated in FIGS.1-2 and discussed previously. As a non-limiting example, step 330 maycomprise identifying manner(s) of communicating with the identifiedwireless resource(s) by communicating with a database that includesstored information identifying manner(s) of communicating associatedwith particular wireless resources. Such a database may, for example, bethe same database utilized at step 320 to identify the wirelessresources.

The exemplary method 300 may, at steps 314 and 318, determine whether tosearch for unknown wireless resources and perform such searching ifdeemed necessary. Steps 314 and 318 may, for example and withoutlimitation, share any or all characteristics with steps 214 and 218 ofthe exemplary method 200 discussed previously.

The exemplary method 300 may, at step 319, comprise maintaining (e.g.,updating) a database of wireless resource information (e.g., as utilizedat step 320 and/or step 330) associated with particular locations. Suchupdating may, for example, comprise updating the database regardingwireless resources previously identified as “known” resources, wheresuch devices are no longer available. Such updating may also, forexample, comprise updating the database regarding previously unknownwireless resources identified at step 318. As mentioned previously, sucha database may be on-board the communication system or may be off-board.

The exemplary method 300 may, at step 340, comprise communicating withidentified wireless resources as necessary. Step 340 may, for exampleand without limitation, share any or all characteristics with steps 140and 240 of the exemplary methods 100, 200 illustrated in FIGS. 1-2 anddiscussed previously.

The exemplary method 300 was presented to provide non-limiting exemplaryillustrations of various aspects of the present invention. Accordingly,the scope of various aspects of the present invention should not belimited by characteristics of the exemplary method 300.

FIG. 4 is a diagram illustrating a portion of a first exemplarycommunication system 400, in accordance with various aspects of thepresent invention. The exemplary communication system 400 may, forexample and without limitation, share any or all functionalcharacteristics with the exemplary methods 100, 200, 300 illustrated inFIGS. 1-3 and discussed previously.

As explained previously with regard to FIG. 1, the exemplarycommunication system 400 may comprise characteristics of any of avariety of types of communication systems (e.g., fixed or mobilemultimode communication devices).

The exemplary communication system 400 may comprise one or more wirelessinterface modules 410. The wireless interface module(s) 410 may comprisecharacteristics of any of a variety of wireless interface hardwareand/or software. For example, the wireless interface module(s) 410 maycomprise a plurality of radios dedicated to communicating in respectivemodes associated with respective communication protocols and/orstandards. Also for example, the wireless interface module(s) 410 maycomprise one or more programmable radios that are programmable tocommunicate in any of a plurality of communication modes, depending onthe programming.

For a non-limiting exemplary discussion of programmable radioconfigurations generally, refer to U.S. patent application Ser. No.11/217,645, entitled “MULTIMEDIA COMMUNICATION DEVICE WITH CONFIGURATIONUPDATE CAPABILITY,” filed Sep. 1, 2005, and U.S. patent application Ser.No. ___/___,___, entitled “PROGRAMMABLE WIRELESS ACCESS POINT SUPPORTINGCONFIGURATION PROFILE UPDATING,” filed ______, with attorney docketnumber 16864US01, which are hereby incorporated herein by reference intheir entirety.

The exemplary communication system 400 may further comprise one or moreuser interface modules 450. The user interface module(s) 450 maygenerally be adapted to provide a communication link between thecommunication system 400 and a user of the communication system 400. Theuser interface module(s) 450 may comprise characteristics of any of avariety of user interface module(s). Accordingly, the scope of variousaspects of the present invention should not be limited bycharacteristics of any particular type of user interface module.

The exemplary communication system 400 may comprise a locationdetermination module 420 adapted to determine a location of thecommunication system 400. The location determination module 420 may, forexample and without limitation, share any or all finctionalcharacteristics with steps 110, 210 and 310 of the exemplary methods100, 200, 300 illustrated in FIGS. 1-3 and discussed previously.

For example and without limitation, the location determination module420 may be adapted to acquire (e.g., utilizing the wireless interfacemodule(s) 410) and utilize location-related information received fromvarious types of systems generally associated with positioninginformation (e.g., terrestrial and/or satellite-based positioningsystems). As an example, the location determination module 420 may beadapted to receive and process GPS and/or UWB information to determinethe location of the communication system 400. The location determinationmodule 420 (or other module of the communication system 400, forexample, the wireless interface modules 410) may, for example, comprisean on-board GPS and/or other location information receiver. Note thatportions of a position tracking system may be included in thecommunication system 400.

Further for example, the location determination module 420 may beadapted to receive location information from a communication network (ornetwork device) with which the communication system 400 has establishedcommunication (e.g., utilizing the wireless interface module(s) 410). Asa non-limiting example, the location determination module 420 may beadapted to establish a communication link with an access point of aparticular personal area network (“PAN”) or local area network (“LAN”)that then notifies the communication system 400 of the network or accesspoint location.

Additionally for example, the location determination module 420 may beadapted to ascertain location of the communication system 400 from oneor more detected communication networks. For example, the locationdetermination module 420 may be adapted to utilize knowledge ofcommunication network location. As a non-limiting example, the locationdetermination module 420 may be adapted to ascertain that thecommunication system 400 is in the home when a PAN associated with ahome office is detected (e.g., utilizing the wireless interfacemodule(s) 410). As another non-limiting example, the locationdetermination module 420 may be adapted to ascertain that thecommunication system 400 is at the office when the office LAN isdetected. As a further non-limiting example, the location determinationmodule 420 may be adapted to ascertain that the communication system 400is at a particular airport when the airport's LAN is detected, or thatthe communication system 400 is in a particular city when the city's MANis detected. The location determination module 420 may be adapted toascertain location of the communication system 400 based on any of avariety of detected networks (e.g., two-way communication networks,one-way communication networks, television networks, radio networks,etc.).

Further for example, the location determination module 420 may beadapted to ascertain location of the communication system 400 from oneor more detected electronic devices. For example, the locationdetermination module 420 may be adapted to utilize knowledge of devicelocation. As a non-limiting example, the location determination module420 may be adapted to ascertain that the communication system 400 is inthe home when a home device is detected (e.g., utilizing the wirelessinterface module(s) 410). Various examples of such devices were providedpreviously. As a further non-limiting example, the locationdetermination module 420 may be adapted to ascertain that thecommunication system 400 is in the office when an office device isdetected. Various examples of such devices were provided previously.

The location determination module 420 may, for example, be adapted todetermine location of the communication system 400 by analyzingcommunication link conditions (e.g., utilizing the wireless interfacemodule(s) 410). As a non-limiting example, the location determinationmodule 420 may be adapted to determine that the communication system 400is in the immediate vicinity of the office based on a relativelyhigh-quality communication link between the communication system 400 andthe office LAN. Continuing the example, the location determinationmodule 420 may alternatively be adapted to determine that thecommunication system 400 is at least one block away from the officebased on a relatively low-quality communication link between thecommunication system 400 and the office LAN. As another example, thelocation determination module 420 may be adapted to determine that thecommunication system 400 is home but not within the home office based ona relatively high-quality communication link with a home LAN and arelatively low-quality communication link with a home office PAN.

The location determination module 420 may further, for example, beadapted to determine location of the communication system 400 based onuser input. As a non-limiting example, a user may explicitly indicate tothe communication system 400 (e.g., through the user interface module(s)450) that the communication system 400 is located in a particular city,building, room, campus, etc.

In general, the location determination module 420 may be adapted todetermine location of the communication system 400. Accordingly, thescope of various aspects of the present invention should not be limitedby characteristics of any particular manner of, or mechanism for,determining a communication system location.

The exemplary communication system 400 may comprise a wireless resourceidentification module 430 adapted to identify one or more wirelessresources based, at least in part, on the determined location (e.g., asdetermined by the location determination module 420). The wirelessresource identification module 430 may, for example and withoutlimitation, share any or all functional characteristics with steps 120,220 and 320 and with steps 212-218 and 314-318 of the exemplary methods100, 200, 300 illustrated in FIGS. 1-3 and discussed previously.

The wireless resource identification module 430 may be adapted toidentify one or more wireless resources in any of a variety of manners,non-limiting examples of which will be presented below. Various aspectsof wireless resources and the identification of wireless resources werepresented previously.

The wireless resource identification module 430 may, for example, beadapted to identify a list of wireless resources associated with thedetermined location. Such a list of wireless resources may, for example,comprise a list of wireless communication networks associated with thedetermined location. Such a list of wireless resources may, for example,comprise a list of electronic devices with wireless communicationcapability that are associated with the determined location. Such a listmay also, for example, comprise any of a variety of types of informationassociated with a wireless resource (e.g., resource name, type, address(universal and/or local), characteristics, capabilities, communicationprotocols, availability, status, location, access privileges, etc.).

A list or other grouping of wireless resources associated with adetermined location may, for example, be formed from information storedin a database. Such a database may, for example reside on-board thecommunication system 400 (e.g., in a non-volatile memory device) or mayreside in another device communicatively coupled to the communicationsystem 400 (e.g., through a communication network, like a LAN or theInternet). Such a database may, for example, comprise stored informationcorrelating one or more locations with one or more respective wirelessresources. As will be discussed in more detail later, such a databasemay be maintained manually or automatically and/or managed off-line orin real-time. A list of wireless resources may, for example, beexclusive or non-exclusive. That is, such a list may, for example,comprise a list of the only wireless resources that the communicationsystem 400 is to utilize or may, for example, comprise a list of primaryresources that the communication system 400 is to utilize while allowingfor the utilization of other wireless resources that the communicationsystem 400 determines are available.

The wireless resource identification module 430 may, for example, beadapted to identify a set of wireless resources of a plurality ofpredetermined sets of wireless resources, each of which might beassociated with one or more particular locations. In a non-limitingexemplary scenario, a first set of wireless resources may be associatedwith a home location, a second set of wireless resources may beassociated with an office location, a third set of wireless resourcesmay be associated with a commute (or portion thereof), and a fourth setof wireless resources may be associated with a particular city. Notethat in various exemplary scenarios (e.g., located in an office), aplurality of locations may be determined simultaneously (e.g., office,campus and city). Thus, in such exemplary scenarios, a plurality of setsof wireless resources may be simultaneously applicable.

Also for example, the wireless resource identification module 430 may beadapted to identify unknown wireless resources. For example, thewireless resource identification module 430 may be adapted to search forany wireless resources that are recognized and available. In variousexemplary scenarios, the wireless resource identification module 430 maybe adapted to utilize the wireless interface modules 410, or portionsthereof, to perform such searching. Such identification may, forexample, be performed in addition to, or in lieu of, identifying knownwireless resources. As an example, the wireless resource identificationmodule 430 may be adapted to determine that no wireless resources areknown to be associated with the present location, and determine tosearch for all recognized and available resources within range of thelocation. Such searching may, for example, comprise performing activesearching (e.g., sending beacons and waiting for responses) and/orpassive searching (e.g., listening for beacons or other signals sent byother devices). In various exemplary scenarios, information ofidentified previously unknown resources may be stored in a database forfuture reference.

Additionally for example, the wireless resource identification module430 may be adapted to verify the existence and/or availability of knownresources. In various exemplary scenarios, the wireless resourceidentification module 430 may be adapted to utilize the wirelessinterface module 410, or portions thereof, to perform such searching.For example, the wireless resource identification module 430 may beadapted to first determine a list of wireless resources that are knownto be generally available at a particular location, and then attempt toestablish communication links with the known devices to verify that theknown devices are currently available. As will be discussed later,information related to resource verification may be utilized to updatedatabase information for future reference.

In various exemplary scenarios, the wireless resource identificationmodule 430 may also fail to identify any wireless resources associatedwith the location. In such a scenario, as discussed above, the wirelessresource identification module 430 may be adapted to search for unknownresources. Alternatively, in such a scenario, the wireless resourceidentification module 430 may be adapted to not search for otherresources (e.g., in an energy-saving mode or in accordance with auser-defined behavioral profile).

Still further for example, the wireless resource identification module430 may be adapted to interact with a user regarding wireless resources.For example, the wireless resource identification module 430 may beadapted to receive a user input (e.g., utilizing the user interfacemodules 450) identifying a set of wireless resources to utilize untildirected otherwise by the user. Also for example, the wireless resourceidentification module 430 may be adapted to present a plurality of setsof wireless resources to the user (e.g., on a display coupled to theuser interface modules 450) for the user to select from. Further forexample, the wireless resource identification module 430 may be adaptedto utilize the user interface modules 450 to present any of a variety oftypes of information regarding wireless resources to a user andacquiring user input regarding the presented information.

As mentioned previously, the wireless resource identification module 430may be adapted to determine whether the communication system 400 islocated at (or near) a known location (e.g., a location at which thecommunication system 400 has a communication history with known wirelessresources). In a non-limiting exemplary scenario, the wireless resourceidentification module 430 may be adapted to search (or query) a databaseor other memory storage for information regarding the location. In oneexample, the wireless resource identification module 430 may, forexample, be adapted to determine that there is no database informationcorresponding to the location, and thus, determine that the location isunknown. In another example, the wireless resource identification module430 may be adapted to determine that there is database informationcorresponding to the location and that the information indicates thatthere are no known wireless resources associated with the location, andthus, determine that the location is to be treated as an unknownlocation. In a further non-limiting exemplary scenario, the wirelessresource identification module 430 may be adapted to solicit and receiveuser input (e.g., utilizing the user interface modules 450) regarding apresent location to determine whether the location is unknown or to betreated as unknown. In general, the wireless resource identificationmodule 430 may be adapted to determine whether the location is unknown(or to be treated as such) in any of a variety of manners.

If, for example, the wireless resource identification module 430determines that the location is a known location, then the wirelessresource identification module 430 may be adapted to identify one ormore wireless resources based, at least in part, on the determinedlocation and identify respective manner(s) for communicating with theidentified wireless resources(s).

If, for example, the wireless resource identification module 430determines that the location is not a known location, then the wirelessresource identification module 430 may be adapted to determine whetherto search for unknown wireless resources. The wireless resourceidentification module 430 may be adapted to make such a determination inany of a variety of manners. For example and without limitation, thewireless resource identification module 430 may be adapted to solicitinput from a user (e.g., in real time utilizing the user interfacemodules 450) regarding whether to search for unknown wireless resources.Also for example, the wireless resource identification module 430 may beadapted to make such a determination by analyzing a pre-defined profile(e.g., defined in non-real time prior to the real-time need for suchinformation) indicating whether to search for unknown wirelessresources. Such a profile may, for example, indicate to thecommunication system 400 the circumstances under which the communicationsystem 400 is to search for unknown wireless resources. As a furtherexample, the wireless resource identification module 430 may be adaptedto determine whether to search for unknown wireless resources based onpresent power supply levels of the communication system 400. As yetanother example, the wireless resource identification module 430 may beadapted to always or never search for unknown wireless resources.

If the wireless resource identification module 430 determines that nosearch for unknown wireless resources is to be conducted, then thewireless resource identification module 430 may, in various scenarios,implement a delay of some sort (e.g., to conserve finite powerresources). For example and without limitation, the wireless resourceidentification module 430 may be adapted to implement a predefined timedelay (e.g., periodic, random or according to a predefined schedule orprofile). The wireless resource identification module 430 may also, forexample, be adapted to wait for any of a variety of events to occurbefore continuing operation. After implementing the delay, the wirelessresource identification module 430 may be adapted to receiving updatedinformation regarding the location of the communication system 400.

If the wireless resource identification module 430 determines that asearch for unknown wireless resources is to be conducted, the wirelessresource identification module 430 may be adapted to search for unknownwireless resources. Various non-limiting exemplary manners of searchingfor unknown wireless resources were discussed previously. For exampleand without limitation, the wireless resource identification module 430may be adapted to actively search for unknown wireless resources. Suchactive searching may, for example, comprise transmitting beacon signalsand analyzing return signals (e.g., utilizing the wireless interfacemodules 410). Such active searching may also, for example, comprisecommunicating with a database (e.g., locally, through the Internetand/or through the cellular telephony infrastructure) to determinewhether there are any records of particular wireless resourcesassociated with the location. The wireless resource identificationmodule 430 may alternatively, for example, be adapted to perform passivesearching for wireless resources (e.g., utilizing the wireless interfacemodules 410). Such passive searching may, for example, comprisepassively listening for beacon or other signals transmitted by wirelessresources. Such passive searching may also, for example, comprisepassively listening for wireless resource identification informationtransmitted by other devices.

As part of searching for unknown wireless resources, the wirelessresource identification module 430 may also be adapted to identifyrespective manner(s) of communicating with the identified wirelessresources(s). Examples of such manners of communication were presentedpreviously. For example and without limitation, the wireless resourceidentification module 430 may be adapted to analyze received signals(e.g., beacon signals or responses to beacon signals) to determine amanner of communicating with identified wireless resources. Also forexample, the wireless resource identification module 430 may be adaptedto analyze database information associated with identified wirelessresources to determine such manners of communication. Further forexample, the wireless resource identification module 430 may be adaptedto communicate with a wireless resource using a first manner ofcommunication (e.g., utilizing the wireless interface modules 410) todetermine other manners of communication with which the wirelessresource may communicate.

In general, the wireless resource identification module 430 is adaptedto identify one or more wireless resources based, at least in part, onthe determined location. Accordingly, the scope of various aspects ofthe present invention should not be limited by characteristics of one ormore particular manners of, or mechanisms for, identifying wirelessresources.

The exemplary communication system 400 may also comprise a communicationmanager module 440 adapted to identify respective manner(s) ofcommunicating with the identified wireless resource(s) (e.g., asidentified by the wireless resource identification module 430). Thecommunication manager module 440 may, for example and withoutlimitation, share any or all functional characteristics with steps 130,230 and 330 and with steps 140, 240 and 340 of the exemplary methods100, 200, 300 illustrated in FIGS. 1-3 and discussed previously.

The communication manager module 440 may, for example, be adapted toidentify respective manner(s) of communicating with the identifiedwireless resources(s) (e.g., as identified by the wireless resourceidentification module 430). The communication manager module 440 may beadapted to identify the respective manner(s) of communicating with theidentified wireless resource(s) in any of a variety of manners,non-limiting examples of which will be presented below.

For example, the communication manager module 440 may be adapted toidentify at least one radio of a plurality of radios of thecommunication system 400 to utilize to communicate with identifiedwireless resources (e.g., as identified by the wireless resourceidentification module 430). As a non-limiting example, the communicationsystem 400 may (e.g., as wireless interface modules 410) comprise afirst radio adapted to communicate utilizing a first communicationprotocol or standard (e.g., IEEE 802.11), a second radio adapted tocommunicate utilizing a second communication protocol or standard (e.g.,Bluetooth) and a third radio adapted to communicate utilizing a thirdcommunication protocol or standard (e.g., IEEE 802.15). Continuing thenon-limiting example, the location determination module 420 maydetermine that the communication system 400 is located in an office. Thewireless resource identification module 430 may then identify a firstwireless resource (e.g., a video monitor) that communicates utilizingthe second communication protocol and a second wireless resource (e.g.,a LAN access point) that communicates utilizing the first communicationprotocol. The communication manager module 440 may then, for example,identify the second radio for communicating with the first wirelessresource and identify the first radio for communicating with the secondwireless resource.

Also for example, the communication manager module 440 may be adapted toidentify at least one radio configuration profile with which toconfigure a programmable radio (e.g., of the wireless interface modules410) of the communication system 400. As a non-limiting example, amultimode communication device may comprise a programmable radio that isconfigurable to communicate in accordance with a plurality ofcommunication protocols (or standards). In a non-limiting exemplaryscenario, a first configuration profile may correspond to communicatingutilizing GSM, a second configuration profile may correspond tocommunicating utilizing EDGE, a third configuration profile maycorrespond to communicating utilizing IEEE 802.20, and a fourthconfiguration profile may correspond to communicating utilizing WCDMA.Continuing the non-limiting exemplary scenario, the locationdetermination module 420 may determine that the communication system 400is located in the home living room. The wireless resource identificationmodule 430 may then identify a first wireless resource (e.g., a set topbox) and a second wireless resource (e.g., a GSM cellular network)associated with the home living room location. The communication managermodule 440 may then identify the third configuration profile forcommunicating with the set top box utilizing IEEE 802.20 and identifythe first configuration profile for placing a telephone call utilizingthe GSM cellular network.

Further for example, the communication manager module 440 may be adaptedto identify at least one communication protocol (or standard) of aplurality of communication protocols (or standards) to utilize forcommunications. In a non-limiting exemplary scenario, the communicationsystem 400 (e.g., the wireless interface modules 410) may be adapted tocommunicate utilizing a first communication protocol (e.g., IEEE802.11), a second communication protocol (e.g., Bluetooth), a thirdcommunication protocol (e.g., IEEE 802.16) and a fourth communicationprotocol (e.g., WCDMA). Continuing the exemplary scenario, the locationdetermination module 420 may determine that the communication system 400is located in a particular conference room in a particular building. Thewireless resource identification module 430 may then, for example,identify a first wireless resource (e.g., a Bluetooth-based wireless LANaccess point), a second wireless resource (e.g., an IEEE 802.16-basedvideo projector) and a third wireless resource (e.g., a Bluetooth-basedaudio output device). Continuing the exemplary scenario, thecommunication manager module 440 may then identify the secondcommunication protocol for communicating with the wireless LAN, thethird communication protocol for communicating with the video projectorand the second communication protocol for communicating with the audiooutput device.

Note that communication protocol (or standard) identification may alsocomprise various implementation details associated with a communicationprotocol. Such protocol implementation details may, for example andwithout limitation, comprise power information, frequency information,secure communication information, etc. Note also that such informationmay vary based on location. For example, different regions may havedifferent respective maximum power limits associated with the IEEE802.11 standard and/or may require operation in different respectivefrequency bands. Accordingly, implementing a first protocol at a firstlocation may be different from implementing the first protocol at asecond location.

In general, the communication manager module 440 may be adapted toidentify respective manner(s) of communicating with the identifiedwireless resources(s). Accordingly, the scope of various aspects of thepresent invention should not be limited by characteristics of anyparticular manner of, or mechanism for, identifying a manner ofcommunicating.

The communication manager module 440 may (e.g., utilizing the wirelessinterface modules 410 be adapted to communicate with the identifiedwireless resources (e.g., as identified by the wireless resourceidentification module 430) in particular respective manners (e.g., asidentified by the communication manager module 440). The communicationmanager module 440 may be adapted to communicate with the identifiedwireless resources in any of a variety of manners (e.g., utilizing thewireless interface modules 410).

The communication system 400 may generally perform any of a variety oftypes of additional processing. For example, the communication system400 (or a module thereof) may be adapted to maintain wireless resourcedatabase information. Also for example, the location determinationmodule 420 may be adapted to re-determine location of the communicationsystem 400 and continue operation. Further for example, thecommunication system 400 may be adapted to receive operationalinformation from a user (e.g., through the user interface modules 450).Still further for example, the wireless resource identification module430 may be adapted to periodically perform searches for unknown wirelessresources and/or verifying the existence and/or availability of knownwireless resources.

The exemplary communication system 400 was presented to provideexemplary illustrations of various aspects of the present invention.Accordingly, the scope of various aspects of the present inventionshould not be limited by characteristics of the exemplary communicationsystem 400.

FIG. 5 is a diagram illustrating a portion of a second exemplarycommunication system 500, in accordance with various aspects of thepresent invention. The exemplary communication system 500 may share anyor all characteristics with the exemplary system 400 illustrated in FIG.4 and discussed previously, and may share any or all functionalcharacteristics with the exemplary methods 100, 200, 300 illustrated inFIGS. 1-3 and discussed previously.

The exemplary communication system 500 (e.g., a multimode communicationdevice or mobile multimode communication device) may comprise one ormore wireless communication interface modules 510, including a wirelessfront-end 512 and various communication interface support modules 514corresponding to various communication modes (e.g., protocols and/orstandards). The wireless communication interface modules 510 may shareany or all characteristics with the communication interface modules 410illustrated in FIG. 4 and discussed previously.

The wireless front-end 512 may, for example, comprise various componentsadapted to communicate over an RF interface or non-tethered opticalinterface. The communication interface support modules 514 may, forexample, comprise hardware and/or software modules adapted tocommunicate in any of a variety of communication modes (e.g., inaccordance with various protocols and/or standards). For example andwithout limitation, the communication interface support modules 514 maycomprise hardware and/or software modules adapted to supportcommunication over protocols/standards comprising GSM/GPRS/EDGE,CDMA/WCDMA, TDMA/PDC, Bluetooth, IEEE 802.11, UWB, IEEE 802.15, IEEE802.16, IEEE 802.20, DVB-H, etc.

The exemplary communication system 500 may also comprise a locationdetermination module 520, which may share any or all characteristicswith the location determination module 420 illustrated in FIG. 4 anddiscussed previously. For example, the location determination module 520may be adapted to determine location of the communication system 500utilizing GPS, UWB, network identification, device identification, etc.

The exemplary communication system 500 may additionally comprise awireless resource identification module 530, which may share any or allcharacteristics with the wireless resource identification module 430illustrated in FIG. 4 and discussed previously. For example, thewireless resource identification module 530 may be adapted to determineidentify of networks, access points, devices with wireless communicationcapability, or any known or unknown wireless resources. The wirelessresource identification module 530 may be adapted to identify wirelessresources in any of a variety of manners, including database searching,active and/or passive searching, accessing local and/or remote resourceidentification information, utilizing information obtained through userinteraction, etc.

The exemplary communication system 500 may further comprise acommunication manager module 540, which may share any or allcharacteristics with the communication manager module 440 illustrated inFIG. 4 and discussed previously. For example, the communication managermodule 540 may be adapted to identify manners of communication withvarious wireless resources and to manage communication with variouswireless resources. For example, the communication manager module 540may be adapted to identify various radios, radio configurations,protocols and/or standards to utilize for communication with variouswireless resources.

The exemplary communication system 500 may, for example, comprise ageneral processor or digital signal processor 560 and a memory 570. Theprocessor 560 and memory 570 may be adapted to implement various aspectsof the present invention with the processor 560 executing softwareinstructions stored in the memory 570. For example and withoutlimitation, the processor 560 may implement a portion of (or all of) thefunctionality of the location determination module 520, wirelessresource identification module 530 and/or communication manager module540.

Also for example, as discussed previously, various aspects of wirelessresource identification may involve utilizing memory on-board thecommunication system 500 (e.g., analyzing and/or maintaining a wirelessresource database). The memory 570 may be utilized for such a purpose.

The exemplary system 500 further includes one or more user interfacemodules 550, which may share any or all characteristics with the userinterface modules 450 illustrated in FIG. 4 and discussed previously.For example and without limitation, the user interface modules 550 maycomprise video input/output modules (e.g., a display module, cameramodule, etc.), audio input/output modules (e.g., a speaker, microphonemodule, etc.), and/or touch or tactile input/output modules (e.g., atouch screen module, vibratory output module, keypad module, etc.).

The exemplary communication system 500 was presented to providenon-limiting exemplary illustrations of various aspects of the presentinvention. Accordingly, the scope of various aspects of the presentinvention should not be limited by characteristics of the exemplarycommunication system 500.

For illustrative clarity, the exemplary systems 400, 500 were presentedin terms of various functional modules. Various modules may, forexample, be implemented in hardware, software or a combination thereof.Various modules may, for example, be implemented in a single integratedcircuit or combination of integrated circuits. Also, various modules mayshare various sub-modules and/or subcomponents. For example and withoutlimitation, various hardware modules may share various electricalcomponents, and various software modules may share various softwaresubroutines. Accordingly, the scope of various aspects of the presentinvention should not be limited by characteristics of any particularhardware and/or software implementation or by any arbitrary boundariesbetween various functional modules.

In summary, various aspects of the present invention provide a systemand method providing location based wireless resource identification ina communication system. While the invention has been described withreference to certain aspects and embodiments, it will be understood bythose skilled in the art that various changes may be made andequivalents may be substituted without departing from the scope of theinvention. In addition, many modifications may be made to adapt aparticular situation or material to the teachings of the inventionwithout departing from its scope. Therefore, it is intended that theinvention not be limited to the particular embodiment disclosed, butthat the invention will include all embodiments falling within the scopeof the appended claims.

1. In a multimode communication device, a method for identifyingwireless resources, the method comprising: determining a location of themultimode communication device; and identifying one or more wirelessresources based, at least in part, on the determined location.
 2. Themethod of claim 1, wherein determining location of the multimodecommunication device comprises receiving location-related informationfrom a source external to the multimode communication device.
 3. Themethod of claim 1, wherein determining location of the multimodecommunication device comprises ascertaining location of the multimodecommunication device from one or more detected communication networks.4. The method of claim 1, wherein determining location of the multimodecommunication device comprises ascertaining location of the multimodecommunication device from one or more detected devices.
 5. The method ofclaim 1, further comprising identifying respective manner(s) ofcommunicating with the identified wireless resource(s).
 6. The method ofclaim 5, wherein identifying respective manner(s) of communicating withthe identified wireless resource(s) comprises identifying respectiveradio(s) of the multimode communication device for communicating withthe identified wireless resource(s).
 7. The method of claim 5, whereinidentifying respective manner(s) of communicating with the identifiedwireless resource(s) comprises identifying respective radioconfiguration profile(s) with which to configure a programmable radio ofthe multimode communication device for communicating with the identifiedwireless resource(s).
 8. The method of claim 5, wherein identifyingrespective manner(s) of communicating with the identified wirelessresource(s) comprises identifying respective communication protocol(s)to utilize for communicating with the identified wireless resource(s).9. The method of claim 1, wherein identifying one or more wirelessresources comprises identifying a list of wireless networks associatedwith the determined location.
 10. The method of claim 1, whereinidentifying one or more wireless resources comprises identifying a listof wireless devices associated with the determined location.
 11. Themethod of claim 1, wherein identifying one or more wireless resourcescomprises identifying a set of wireless resources of a plurality ofpredetermined sets of wireless resources, each of which are associatedwith one or more particular locations.
 12. The method of claim 1,wherein identifying one or more wireless resources comprises searchingfor unknown wireless resources.
 13. The method of claim 1, whereinidentifying one or more wireless resources comprises identifyingwireless resource information stored in memory on-board the multimodecommunication device.
 14. The method of claim 1, further comprisingmaintaining a database of wireless resources associated with particularlocations.
 15. The method of claim 14, wherein identifying one or morewireless resources based, at least in part, on the determined locationcomprises analyzing the database to determine information of wirelessresources associated with the determined location.
 16. A multimodecommunication device, comprising at least one module adapted to:determine a location of the multimode communication device; and identifyone or more wireless resources based, at least in part, on thedetermined location.
 17. The multimode communication device of claim 16,wherein the at least one module is adapted to determine location of themultimode communication device by, at least in part, receivinglocation-related information from a source external to the multimodecommunication device.
 18. The multimode communication device of claim16, wherein the at least one module is adapted to determine location ofthe multimode communication device by, at least in part, ascertaininglocation of the multimode communication device from one or more detectedcommunication networks.
 19. The multimode communication device of claim16, wherein the at least one module is adapted to determine location ofthe multimode communication device by, at least in part, ascertaininglocation of the multimode communication device from one or more detecteddevices.
 20. The multimode communication device of claim 16, wherein theat least one module is further adapted to identify respective manner(s)of communicating with the identified wireless resource(s).
 21. Themultimode communication device of claim 20, wherein the at least onemodule is adapted to identify respective manner(s) of communicating withthe identified wireless resources(s) by, at least in part, identifyingrespective radio(s) of the multimode communication device forcommunicating with the identified wireless resource(s).
 22. Themultimode communication device of claim 20, wherein the at least onemodule is adapted to identify respective manner(s) of communicating withthe identified wireless resource(s) by, at least in part, identifyingrespective radio configuration profile(s) with which to configure aprogrammable radio of the multimode communication device forcommunicating with the identified wireless resource(s).
 23. Themultimode communication device of claim 20, wherein the at least onemodule is adapted to identify respective manner(s) of communicating withthe identified wireless resource(s) by, at least in part, identifyingrespective communication protocol(s) associated with the identifiedwireless resource(s).
 24. The multimode communication device of claim16, wherein the at least one module is adapted to identify one or morewireless resources by, at least in part, identifying a list of wirelessnetworks associated with the determined location.
 25. The multimodecommunication device of claim 16, wherein the at least one module isadapted to identify one or more wireless resources by, at least in part,identifying a list of wireless devices associated with the determinedlocation.
 26. The multimode communication device of claim 16, whereinthe at least one module is adapted to identify one or more wirelessresources by, at least in part, identifying a set of wireless resourcesof a plurality of predetermined sets of wireless resources, each ofwhich are associated with one or more particular locations.
 27. Themultimode communication device of claim 16, wherein the at least onemodule is adapted to identify one or more wireless resources by, atleast in part, searching for unknown wireless resources.
 28. Themultimode communication device of claim 16, wherein the at least onemodule is adapted to identify one or more wireless resources by, atleast in part, identifying wireless resource information stored inmemory on-board the multimode communication device.
 29. The multimodecommunication device of claim 16, wherein the at least one module isfurther adapted to maintain a database of wireless resources associatedwith particular locations.
 30. The multimode communication device ofclaim 29, wherein the at least one module is adapted to identify one ormore wireless resources by, at least in part, analyzing the database todetermine information of wireless resources associated with thedetermined location.
 31. In a mobile electronic device having wirelesscommunication capability, a method for identifying wireless resources,the method comprising: determining a location of the mobile electronicdevice; and identifying a wireless resource based, at least in part, onthe determined location of the mobile electronic device.
 32. The methodof claim 31, wherein the mobile electronic device is adapted tocommunicate in any of a plurality of communication modes, and furthercomprising identifying a communication mode compatible with theidentified wireless resource.